package com.shujia.utils;

/**
 *  这个类是用作于获取于数据库的连接对象的
 */

import java.io.BufferedReader;
import java.io.FileReader;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;

/*

    针对于mysql数据库编写的工具类：
        1、构造方法私有化
        2、成员方法必须是静态的，为了可以直接通过类名访问
 */
public class MySqlTool {
    private static Connection conn;

    //构造方法私有化
    private MySqlTool(){

    }

    //编写方法获取数据库连接对象
    public static Connection getConnection(){
        try {
            //使用Properties类中的无参构造方法来创建对象
            Properties properties = new Properties();


            //需要使用这个对象读取到我们自己配置的文件
            //使用java将外部数据读取进来，是输入流,使用字符缓冲输入流 BufferedReader
            //完整路径/绝对路径：带盘符的路径
            //相对路径：以项目为根目录的路径
            BufferedReader br = new BufferedReader(new FileReader("E:\\projects\\IdeaProjects\\bigdata21-springboot-demo1\\src\\main\\java\\com\\shujia\\utils\\info.properties"));
            properties.load(br);

            String className = properties.getProperty("className");
            String url = properties.getProperty("url");
            String user = properties.getProperty("user");
            String password = properties.getProperty("password");

            //加载驱动
            Class.forName(className);
            //获取与数据库的连接对象
            conn = DriverManager.getConnection(url, user, password);
        }catch (Exception e){
            e.printStackTrace();
        }

        return conn;

    }


}
